using System.Collections.Generic;

namespace MLSharp.Clustering
{
	/// <summary>
	/// Defines the interface for a cluster in a cluster
	/// tree.
	/// </summary>
	public interface IClusterNode
	{
		/// <summary>
		/// The instances that belong to the cluster node.
		/// </summary>
		IList<Instance> Instances { get; }

		/// <summary>
		/// The child nodes of the current node.
		/// </summary>
		IList<IClusterNode> Children { get; }

		/// <summary>
		/// The ID of the node.
		/// </summary>
		int NodeId { get; }
	}
}